Для того, чтобы добраться до данных, нам нужен интерфейс IAccessor который нужно создать. Объявим необходимы переменные.
// переменные для получения структуры колонок и создания Accessor DBBINDING* pDBBindings; ULONG cbRow = 0;IAccessor* pIAccessor; HACCESSOR hAccessor; DBBINDSTATUS* pDBBindStatus = NULL;
Этот интерфейс необходимо запросить.
hr=pIRowset->QueryInterface(IID_IAccessor, (void**) &pIAccessor);
if (FAILED(hr))
{
delete [] pDBBindings;
pIRowset->Release();
pIColumnsInfo->Release();
pIDBInitialize->Uninitialize();
pIDBInitialize->Release();
// Деинициализация COM
CoUninitialize();
return;
}
И создать Accessor:
pIAccessor->CreateAccessor(DBACCESSOR_ROWDATA,nCols, pDBBindings,0,&hAccessor,pDBBindStatus);
После использования этот интерфейс нужно освободить.
pIAccessor->ReleaseAccessor(hAccessor, NULL); pIAccessor->Release();